Voglio monitorare un evento di smontaggio sul mio NAS. ha una pagina separata per smontare tutte le unità USB. L'ho incluso tramite iframe e voglio mantenere il caricamento del sito fino a quando l'origine dell'immagine non è stata modificata in una fonte specifica (una barra verde, che indica che è stato smontato). Il motivo per cui voglio mantenerlo caricato è perché lo chiamo tramite una funzione jquery.get da un altro sito e voglio che attenda fino al termine del processo di smontaggio. Sarebbe bello se fosse possibile solo in javascript semplice, ma se necessario posso anche includere jquery. Ecco cosa ho ottenuto finora: Ricevo immediatamente un errore indicante che l'elemento "uiView_TestPic" non esiste, anche quando aggiungo un timeout prima di eseguire il controllo. Il sito iFrame incluso interrompe il caricamento non appena vengono caricate tutte le immagini e non al termine dell'intero processo.
2021-02-05 08:19:31
Prima di tutto, entrambi i frame devono essere in esecuzione sullo stesso dominio perché i browser impediranno al codice in un frame di accedere a qualsiasi cosa nell'altro frame se sono domini diversi. Se i due frame non sono sullo stesso dominio, l'iframe dovrà monitorare se stesso e notificare all'altro frame quando ha finito di usare qualcosa come window.postMessage (). Se si trovano sullo stesso dominio, questo è leggermente complicato. Devi ottenere l'elemento iframe (che si trova nel tuo documento principale). Devi aspettare che sia pronto (poiché deve caricare i propri contenuti). Quindi, devi ottenere il documento nell'iframe. Quindi puoi trovare l'immagine desiderata nell'iframe. Quindi puoi osservare il suo contenuto. E, naturalmente, puoi fare tutto ciò solo se l'iframe è lo stesso dominio della tua pagina principale (a causa delle restrizioni di sicurezza). Innanzitutto, aggiungi un ID all'iframe: